In the International Organization for Standardization/International Electrotechnical Commission (ISO/IEC) Moving Picture Experts Group-4 (MPEG-4) Part 10 Advanced Video Coding (AVC) standard/International Telecommunication Union, Telecommunication Sector (ITU-T) H.264 recommendation (hereinafter the “MPEG-4 AVC standard”), SKIP and DIRECT modes are very special modes. SKIP and Direct modes do not include any bits for motion vectors. SKIP and DIRECT modes are optimized for low bitrate, with a proper tradeoff between distortion and bitrate. Motion vectors are derived from spatial and/or temporal neighbors. In the case of SKIP mode, the residue is set to zero.
Thus, SKIP and DIRECT modes use an implicit rule in order to derive motion information from neighboring blocks without the transmission of any extra side information. Side information used in coding schemes with block merging may introduce a coding penalty in SKIP and DIRECT coding modes due to the extra data to be sent.
Tree-structured video data partitioning is present in current major video coding standards. Video standards mostly use tree-structured video data partitioning for frame partitioning in order to adapt the coding mode, and the coding of video data, depending on the video signal. H.261, MPEG-1, and MPEG-2/H.262 support only 16×16 MB partitions. The MPEG-4 Standard simple profile or H.263(+) support both 16×16 and 8×8 partitions for a 16×16 MB. The MPEG-4 AVC Standard supports tree-structured hierarchical macroblock partitions. A 16×16 MB can be broken into macroblock partitions of sizes 16×8, 8×16, or 8×8. 8×8 partitions are also known as sub-macroblocks. Sub-macroblocks can be further broken into sub-macroblock partitions of sizes 8×4, 4×8, and 4×4. Turning to FIG. 1, MPEG-4 AVC Standard coding modes are indicated generally by the reference numeral 100.
Sometimes, though, simple quad-tree partitioning of video data is not enough to achieve the best possible coding efficiency. During the procedure of partitioning, some blocks in a neighborhood may end up including similar data. This data would be better coded if encoded jointly in a single block. However, these neighboring blocks may depend on different parents in the tree-structured partitioning. In such a case, no joint coding is possible. Also, in a given block such as a macroblock, one may want to jointly code only a part of the sub-blocks in an arbitrary pattern, but not all of the sub-blocks. A prior approach to overcoming such a limitation is joint coding of neighboring blocks by leaf merging after tree decomposition. It has been proposed to port the preceding prior art approach to the MPEG-4 AVC Standard for joint coding of motion data of neighboring blocks. The proposed porting uses additional side information to indicate which blocks are jointly coded. This side information indicates which blocks merge to which blocks in order to generate segments sharing the same motion information. Turning to FIG. 2, an exemplary scheme for a possible merging rule after a first tree decomposition stage for region-based motion compensation and coding. In FIG. 2, possible mergings of macroblocks, macroblock partitions, sub-macroblocks, and/or sub-macroblock partitions are respectively indicated by arrows. In one embodiment, a merge flag is used to indicate if the block is merged with another block. A signal of a merge direction is used to indicate to which block the current block is merged to, when the current block has more than one possible merging candidate. Disadvantageously, this prior approach disregards the fact that the MPEG-4 AVC Standard has statistically optimized modes for efficient coding of regions where video data (such as motion) can be directly derived by means of a predictor (such as SKIP or Direct Modes), and where no information about motion (and residual for SKIP) is encoded. In some cases, any additional information for the description of motion introduced in such modes can lead to a loss in coding efficiency. This is the case for the proposed merging information described above. In some sense, SKIP and DIRECT modes can be considered as an implicit merging operation of the SKIP/Direct block with the block that has the same motion vector the generated by the predictor. Hence, extra side information to indicate joint coding with some other block or direction of merging within a SKIP and/or DIRECT mode may lead to the introduction of unnecessary redundancy and, consequently, to a loss in rate-distortion (R-D) efficiency.